package weaver.splittable.db;

import java.util.List;

/**
 * 数据库创建索引工具接口
 * 不同数据库进行不同的实现
 * author: YUEYANG 2023-01-12
 */
public interface STCreateIndexUtil {

    // 创建 数据变动记录 表的索引

    // id
    public String createChangeIndex_Id();

    // data_id
    public String createChangeIndex_DataId();

    // synced
    public String createChangeIndex_Synced();

    // synced table_name event_type
    public String createChangeIndex_SyncedTableNameEventType();

    // synced sync_time
    public String createChangeIndex_SyncedSyncTime();

    // 创建 数据清理记录 表的索引

    // id
    public String createClearIndex_Id();

    // data_id
    public String createClearIndex_DataId();

    // synced
    public String createClearIndex_Synced();

    // synced, table_name, data_id
    public String createClearIndex_SyncedTableNameDataId();

    // synced, sync_time
    public String createClearIndex_SyncedSyncTime();

    public String createIndex(String indexName, String tableName, List<String> columnNames);

}
